package com.ruoyi.docdraw.mapper;

import java.util.List;
import com.ruoyi.docdraw.domain.SysSubProject;
import org.apache.ibatis.annotations.Param;

/**
 * 项目子项目协作Mapper接口
 * 
 * @author lvtian
 * @date 2025-04-14
 */
public interface SysSubProjectMapper 
{
    /**
     * 查询项目子项目协作
     * 
     * @param subProjectId 项目子项目协作主键
     * @return 项目子项目协作
     */
    public SysSubProject selectSysSubProjectBySubProjectId(Long subProjectId);

    /**
     * 查询项目子项目协作列表
     * 
     * @param sysSubProject 项目子项目协作
     * @return 项目子项目协作集合
     */
    public List<SysSubProject> selectSysSubProjectList(SysSubProject sysSubProject);

    /**
     * 新增项目子项目协作
     * 
     * @param sysSubProject 项目子项目协作
     * @return 结果
     */
    public int insertSysSubProject(SysSubProject sysSubProject);

    /**
     * 修改项目子项目协作
     * 
     * @param sysSubProject 项目子项目协作
     * @return 结果
     */
    public int updateSysSubProject(SysSubProject sysSubProject);

    /**
     * 删除项目子项目协作
     * 
     * @param subProjectId 项目子项目协作主键
     * @return 结果
     */
    public int deleteSysSubProjectBySubProjectId(Long subProjectId);

    /**
     * 批量删除项目子项目协作
     * 
     * @param subProjectIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSysSubProjectBySubProjectIds(Long[] subProjectIds);

    /**
     * 检查 项目的子项目名称是否重复
     * @param subProjectName
     * @param projectId
     * @return
     */
    public SysSubProject checkSubProjectNameUnique(@Param("subProjectName") String subProjectName, @Param("projectId") Long projectId);
}
